Repository navigation
Port Portkey changes through adfd74b, require workspace_id, and record what needs confirming - #6
Merged
Merged
Conversation
Work in progress from 2026-10-01, committed as found. The shared WorkspaceIdQuery parameter becomes required and a uuid, and replaces the inline workspace_id query parameters it duplicated. It is added to the guardrail, API key, config, feedback, logs, MCP server, MCP integration, model and model pricing operations that did not carry it. build.py --check and check.py pass. lint.py fails on one path-params finding, but that predates this change: it came in with PR #3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Structure only, from Portkey-AI/openapi 4d58839 and 3107701: - AnthropicConfiguration, a new provider in the integration create, update and detail schemas - provider_auth_type (apiKey, oauthClientCredentials, wif) and the OAuth and workload-identity fields on OpenAIConfiguration - a nullable string-map `tags` on the create and update requests, and a `tags` filter on GET /integrations The Anthropic entries in the three oneOfs are written as allOf: [$ref] beside a title rather than title beside $ref, as their siblings are, so they label the same way without adding to the no-$ref-siblings baseline. Properties that already existed keep their shape; the build added empty description keys to them, and those were taken back out. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…oups Structure only, from Portkey-AI/openapi 66c520a and f76bb1a: - deployment_id, include_all_workspaces and exclude_workspace_slugs on all 22 analytics operations, in upstream's positions - GET /analytics/groups/a2a, /mcp and /workspaces, on the control plane like the other analytics groups (Vrushank, 2026-11-02). They also carry WorkspaceIdQuery, as every other analytics operation here does; upstream has no such parameter. Like upstream, they do not take the two workspace-inclusion filters. The three new operations have no operationId upstream, as none of the analytics operations do, so the operation-operationId baseline goes from 45 to 48. Inventing one would create an SDK contract key nobody chose; the build gave them method-and-path docs URLs instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From Portkey-AI/openapi 8938f71. POST /threads/{thread_id}/messages and
the incoming POST /messages were both createMessage upstream; this frees
the name for the Messages API, as upstream did.
The docs URL is pinned at assistants/create-message rather than moved to
the derived create-thread-message. The page is published and links point
at it; adopting the new URL is a docs migration, done with --apply-hrefs
when docs are ready. The operationId change itself does reach SDKs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Structure only, from Portkey-AI/openapi 8f91369: list, create, get, update and delete on /egress-allowlist, and their four schemas. On the admin plane by Vrushank's call, 2026-11-02. The upstream tag is "Egress-Allowlist"; it ships as "Egress Allowlist", following the Title Case convention in tags-map.yaml, in the Administration group. The build stamped five docs URLs and stubbed the overlay. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Structure only, from Portkey-AI/openapi 2bc08ce and its follow-up 700ece6: list, create, get, update and delete on /policies/access, the AccessPolicyId parameter and nine schemas. On the control plane beside the rate and usage limit policies, by Vrushank's call, 2026-11-02, and in the Administration navigation group. GET /policies/access takes WorkspaceIdQuery upstream as well, so it is required here like everywhere else that carries it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Structure only, from Portkey-AI/openapi 9283142 with its fix 6ac6e5d: POST /messages (createMessage) and POST /messages/count_tokens (countMessageTokens), with 19 schemas, a Messages tag in the Inference group and the same trace headers /chat/completions takes. The gateway is the root server, so no override is written. 6ac6e5d replaced a duplicate CreateMessageRequest with CreateAnthropicMessageRequest; only the fixed shape is ported. Two empty descriptions beside a $ref in it were removed rather than added to the no-$ref-siblings baseline -- OpenAPI 3.0 ignores them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Counts were stale since the Decisions endpoint and are refreshed: 131 paths, 203 operations and docs URLs, 521 components, 46 tags, 48 operations without an operationId, 117 baselined lint findings. Provenance now says what "the linkage is closed" does and does not mean -- nothing follows Portkey automatically, but changes can be ported as decisions -- and lists what has been. Known gaps gains the path-params lint failure that has been on main since PR #3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The required workspace_id from 2026-10-01 drew 86 breaking-change errors from oasdiff on PR #5. Vrushank confirmed it on 2026-11-02: mandatory everywhere WorkspaceIdQuery appears, analytics and /api-keys included, with include_all_workspaces and exclude_workspace_slugs still working beside it. Version stays 3.0.0, since no SDK has been generated. None of that has been checked against the API, because no SCM token was available here. Known gaps now says so, names the three live calls that would settle it, and notes the tension with PR #3's "the scope comes from the token". The unauthenticated pricing endpoint now requiring a workspace is added to its existing entry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Collaborator
Author
|
Review note: GitHub's file diff may show about 16k changed lines in |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Supersedes #5. It contains every #5 commit plus one more, so merging this marks #5 as merged too.
From #5 (unchanged):
workspace_idis required, and a uuid, on every operation that carriesWorkspaceIdQuerytags(4d58839, 3107701)deployment_id/include_all_workspaces/exclude_workspace_slugs, plus/analytics/groups/{a2a,mcp,workspaces}on the control plane (66c520a, f76bb1a)createMessagerenamed tocreateThreadMessage, docs URL pinned (8938f71)New here:
Record the workspace_id decision and what still needs confirmingworkspace_idis mandatory on all 80 operations, analytics and/api-keysincluded, and include/exclude must keep working beside it3.0.0, because no SDKs have been generatedCI expectations (same as #5):
path-paramsfinding that has been onmainsince Drop the scope segment from the API key create path #3workspace_id🤖 Generated with Claude Code